System, method and apparatus for providing a universal financial transaction gateway for computing devices

ABSTRACT

A universal financial transaction gateway for mobile computing devices is provided. The universal financial transaction gateway can comprise at least one core mobile network interface for connecting to a mobile electronic device via a core mobile network. The at least one interface is configured to emulate an interface inherent to the core mobile network. The gateway also comprises a transaction engine connected to the interface and configured to receive transaction instructions from the mobile electronic device via the core mobile network interface. The gateway also comprises a plurality of financial server interfaces for connecting to a plurality of accounts associated with a plurality of financial servers. The plurality of financial server interfaces is configured to emulate an interface inherent to each of the financial servers. The transaction engine is configured to effect the transaction instructions on the financial servers via the financial server interfaces.

FIELD

The present specification relates generally to telecommunications andmore particularly relates to a system, method and apparatus forproviding a universal financial transaction gateway for mobile computingdevices.

BACKGROUND

Complexity and features of mobile computing devices, particularlydevices such as personal digital assistants incorporating wirelesstelephony, email and web-browsing functions, and the like, continue toadvance. There is little sign of such advances plateauing. There is muchactivity relative to providing enhanced applications and services tothese electronic devices. One area of activity is the field of financialtransactions, whereby mobile electronic devices are being used toconduct financial transactions. This area of activity can also impactconducting of financial transactions on other types of mobile computingdevices. Current technology in this area, however, is a patchwork whichfrustrates universality.

SUMMARY

An aspect of the specification provides a universal financialtransaction gateway comprising at least one network interface forconnecting to a mobile computing device via a network. At least oneinterface is configured to emulate an interface inherent to the network.The gateway further comprises a transaction engine connected to theinterface that is configured to receive transaction instructions fromthe mobile computing device via the network interface. The gatewayfurther comprises a plurality of financial server interfaces forconnecting to a plurality of accounts associated with a plurality offinancial servers. The plurality of financial server interfaces areconfigured to emulate an interface inherent to each of the financialservers. The transaction engine is also configured to effect thetransaction instructions on the financial servers via the financialserver interfaces.

The transaction engine can be also configured to effect transactions onaccounts stored on the universal financial transaction gateway based oninstructions received from the reports and analysis engine or asconfigured per data stored in the profile database.

The core mobile network interface can comprise at least one of anUnstructured Supplementary Service Data (USSD) gateway (not shown); ashort message service (SMS) center (SMSC) (not shown); an interactivevoice response (IVR) system (not shown); as well as Internet basedprotocols and interfaces including Wireless Application Protocol (WAP),Session Initiation Protocol, Hypertext Transfer Protocol, and ExtensibleMarkup Language. The financial servers can comprise one or more of acredit card account, a credit line account, a bank account, a cash wiretransfer account, a prepaid wireless account, an Operational SupportSystem (OSS)/Business Support System (BSS) account, a securities tradingplatform, and a commodities trading platform.

The universal financial transaction gateway can further comprise a localaccount database configured to maintain at least one account associatedwith the mobile computing device or with a subscriber associated withthe mobile computing device.

At least one of the financial servers can be configured to maintain atleast one account associated with the mobile computing device or thesubscriber. The universal financial transaction gateway can beconfigured to maintain at least one account associated with the mobilecomputing device or the subscriber.

At least one of the financial servers can be configured to maintain atleast one account associated with another mobile computing device otherthan the mobile computing device, or with another subscriber associatedwith the another mobile computing device. The universal financialtransaction gateway can be configured to maintain at least one accountassociated with another mobile computing device other than the mobilecomputing device, or with another subscriber associated with the anothermobile computing device.

The universal financial transaction gateway can be configured tomaintain at least one account associated with at least one financialserver.

The transaction instructions can include at least one of a fund transferbetween accounts; a loan request; an account balance request; a cashwire transfer; a credit or debit of a credit card account; a credit ordebit of a bank account; a securities purchase or sale; a stock trade; acommodities purchase or sale, a futures purchase or sale and a bondpurchase or sale.

The transaction instructions can include a first account on a firstfinancial server associated with the mobile computing device or a firstsubscriber associated with the mobile computing device, and a second aaccount on a second financial server not associated with the mobilecomputing device or a second subscriber not associated with the mobilecomputing device.

The transaction instructions can include the transfer and/or exchange ofmonetary units as well as non-monetary units or credits. The transactioninstructions can include the exchange of non-monetary units or creditsinto monetary units and conversely monetary units into non-monetaryunits or credits.

The transactions instructions can be associated with transfers/exchangesbetween devices, subscribers, and financial servers which aregeographically distributed and can be in different countries. Thetransaction instructions can be associated with transfers/exchangesbetween devices, subscribers, and financial services which are supportedby dissimilar networks (and associated interfaces) and can be operatedby different entities.

Another aspect of the specification provides a transaction engine inaccordance with the transaction engine of the gateway.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions via a network interface connected tomobile computing device via a network; the network interface configuredto emulate an interface inherent to the network;

processing the transaction instructions;

sending the transaction instructions via at least one financial serverinterface; the financial server interface for connecting to a pluralityof accounts associated with at least one financial server; the financialserver interface configured to emulate an interface inherent to thefinancial server.

The method can further comprise validating the transfer request and onlyproceeding to the processing if the transfer request is successfullyvalidated.

The processing can include effecting an account debit or credit at alocal account database.

Another aspect of the specification comprises a computer readable mediumconfigured to maintain a plurality of programming instructions inaccordance with the foregoing and that are executable on a computingenvironment to provide a universal transaction gateway.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions via an interface connected tofinancial server;

processing the transaction instructions;

sending the transaction instructions via at least one financial serverinterface; the financial server interface for connecting to a pluralityof accounts associated with at least one financial server; the financialserver interface configured to emulate an interface inherent to thefinancial server.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions from a preconfigured profile oranalysis and reporting engine;

processing the transaction instructions;

sending the transaction instructions via at least one financial serverinterface or; the financial server interface for connecting to aplurality of accounts associated with at least one financial server; thefinancial server interface configured to emulate an interface inherentto the financial server.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions via a network interface connected tomobile computing device via a network; the network interface configuredto emulate an interface inherent to the network;

processing the transaction instructions;

sending the transaction instructions via at least one financial serverinterface; the financial server interface for connecting to a pluralityof accounts associated with at least one financial server; the financialserver interface configured to emulate an interface inherent to thefinancial server;

crediting or debiting an account maintained by the universal financialtransaction gateway.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions via a network interface connected tomobile computing device via a network; the network interface configuredto emulate an interface inherent to the network;

processing the transaction instructions;

crediting or debiting an account maintained by the universal financialtransaction gateway.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions via an interface connected tofinancial server;

processing the transaction instructions;

crediting or debiting an account maintained by the universal financialtransaction gateway.

Another aspect of the specification provides a method of conducting auniversal financial transaction comprising:

receiving transaction instructions from a preconfigured profile oranalysis and reporting engine;

processing the transaction instructions;

crediting or debiting an account maintained by the universal financialtransaction gateway.

Another aspect of the specification is that a given financialtransaction can be undertaken in any order subject to the validity ofthe request as determined by the universal financial gateway includingconfigured limitations and controls stored in a profile database.

Another aspect of the specification is that a given transfer or exchangecan involve currencies or non-monetary unit credits. Non-monetary unitcredits can include credits associated with virtual goods such as‘air-time’ as was tangible goods associated with commodities (e.g. bagsof rice) and financial derivatives (e.g. units of stock, bonds).

Another aspect of the specification is that a given financialtransaction can be subject to service charges and tariffs. The servicecharges or tariffs can be applied against the value associated with agiven financial transaction. The applicable service charges and tariffcharges can be distributed to and accumulated in at least one accountassociated with either a device, subscriber, or financial institution.

Another aspect of the specification is that a given financialtransaction can associated with a loyalty or promotion program thatresults in a monetary or non-monetary award subject to the configurationof the loyalty or promotion program as stored in a profile database.

Another aspect of the specification is that the service charges or feesassociated with a given financial transaction can be sponsored orsubsidized in their entirety or in part either in connection with aloyalty or promotional program or in connection with a marketing programassociated with at least one sponsor.

Another aspect of the specification is that non-zero debit and creditamounts maintained by the universal financial transaction gateway can beassociated with interest charges based at least on the magnitude of thedebit or credit amount, whether it is a debit or credit amount, thedefault currency associated with the account, the default locationassociated with the subscriber, the location of universal financialtransaction gateway to the extent that a given account resides in aserver located in a given geographic location.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments will now be discussed, by way of example only, inrelation to the attached Figures in which:

FIG. 1 is a schematic representation of a universal financialtransaction system.

FIG. 2 is a schematic representation of the electronic device of FIG. 1.

FIG. 3 shows a flow-chart depicting a method of conducting a financialtransaction using a mobile computing device.

FIG. 4 shows a flow-chart depicting another method of conducting afinancial transaction using a mobile computing device.

FIG. 5 shows a flow-chart depicting another method of conducting afinancial transaction using a mobile computing device.

FIG. 6 shows a flow-chart depicting another method of conducting afinancial transaction using a mobile computing device.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Referring now to FIG. 1, a universal financial transaction system isindicated generally at 50. System 50 comprises an electronic device 54that is connectable to a core mobile network 62 via a base station 66.In a present embodiment electronic device 54 is mobile such that awireless link 70 is employed between electronic device 54 and basestation 66. Any known backhaul link 74 is used between base station 66and core mobile network 62.

While the present embodiment contemplates a core mobile network 62 (forexample, network technologies based on Global System for Mobile (GSM)communications, Code Division Multiple Access (CDMA), and the like), itis to be understood that in other embodiments other types of networksother than core mobile network technologies are contemplated, such as,for example, (e.g. the Internet or an Intranet connected to electronicdevice 54 via an Institute of Electrical and Electronic Engineers (IEEE)802.11 or 802.16 connection).

Referring briefly to FIG. 2, electronic device 54 is shown in greaterdetail. Electronic device 54 in a present embodiment is based on thecomputing environment of a mobile wireless device that comprises thefunctionality of a cellular telephone, wireless email pager, web-browserand a personal digital assistant. Electronic device 54 thus includes ahardware configuration that comprises one or more input devices in theform of a keyboard 200, microphone 204 and the like; one or more outputdevices in the form of a display 208, a speaker 212 and the like; and anetwork interface 216, implemented in the form of a radio in the presentembodiment. Network interface 216 is configured for conducting wirelesscommunications over link 70. The foregoing components are interconnectedby a microcomputer comprised of one or more central processing units 220connected to volatile memory 224 (e.g. random access memory) andnon-volatile memory 228 (e.g. FLASH memory). It should now be understoodthat in other embodiments electronic device 54 can be based on othertypes of mobile computing devices, including the computing environmentof a desktop computer, a workstation, a thin-client or the like.

Referring again to FIG. 1, system 50 also comprises a universaltransaction gateway 78 that connects to core mobile network 62.Universal transaction gateway 78 can be based on any suitable servercomputing environment. While not shown herein, it will understood bythose skilled in the art the server includes a hardware configurationthat may comprise one or more input devices in the form of a keyboard, amouse and the like; one more output devices in the form of a display,and the like; a network interface for conducting network communications;all of which are interconnected by a microcomputer comprised of one ormore central processing units that itself is connected to volatilememory and non-volatile memory. (The computing environment shown in FIG.2 presents an analogous environment to the computing environment ofgateway 78). As will become apparent from the following discussions, thecomputing environment of universal transaction gateway 78 will alsocomprise software processes that can be read from and maintained innon-volatile memory (or other computer readable media) that can beexecuted on the one or more central processing units. It will also beunderstood that universal transaction gateway 78 can be implemented as aplurality of servers to provide scalability.

Universal transaction gateway 78 also maintains at least one clientinterface 80 that is configured to provide an interface with electronicdevice 54 corresponding to the interfaces offered by electronic device54. For example, at least one client interface 80 can be one or more ofthe following: an interface with an Unstructured Supplementary ServiceData (USSD) gateway (not shown); a short message service (SMS) center(SMSC) (not shown); an interactive voice response (IVR) system (notshown). The client interface 80 can also interface with electronicdevice 54 with a number of Internet protocols (e.g. Wireless ApplicationProtocol (WAP), Session Initiation Protocol, Hypertext TransferProtocol, and Extensible Markup Language). In the latter case, thoseskilled in the art will recognize that an application such as anInternet or WAP browser or an application specifically designed tointerface via universal transaction gateway can be resident onelectronic device 54. The client interface 80 can support one or more ofthe foregoing interfaces and protocols concurrently. In a givenembodiment the client interface 80 will be used to facilitate theability of a given subscriber to initiate, modify, or terminaterequests, select among a number of options, as well as receivenotifications. In a given embodiment, the messages or protocolssupported via client interface 80 can be encrypted using encryptionalgorithms. Those skilled in the art will recognize that a variety ofpublic-key or private-key encryption algorithms can be used to encryptthe messages or protocols supported via client interface 80.

Other types of interfaces that can be included in at least one clientinterface 80 will now occur to those skilled in the art.

Universal transaction gateway 78 also comprises a transaction engine 82that is configured to effect transfers between various accounts ordatabases according to instructions received from electronic device 54,subscriber S, or from servers 118-1 to 118-n. The transaction engine canalso effect transfers between various accounts or databases according toinstructions received from the profile database 86 or report andanalysis engine 120. Transaction engine 82 thus connects to a profiledatabase 86 which maintains account information that corresponds toelectronic device 54 or subscriber S, including data representing atleast a unique identifier for each account. More than one account may beassociated with electronic device 54 or subscriber S. Other accountinformation can also be maintained by profile database 86, as needed ordesired, including a default currency denomination associated with eachaccount and any rules to be applied to the transfers conducted byuniversal transaction gateway 78, such as the class or category ofaccounts (e.g. retail subscriber, reseller, distributer), passwords,identity information such as personal identification numbers (PINs),login information, exclusion lists (blacklists) of source or destinationaccounts, inclusion lists (whitelists) of source or destinationaccounts, limits or restrictions such as maximum transfer limits over agiven chronological period (e.g. 100 units of a given currency over oneday), rules relating to account hierarchies and transfer restrictionsbetween classes or categories of accounts, account information includingaccount identifiers and account addressing and/or routing information,promotion identifiers, promotion or loyalty promotion status and state,limits or restrictions relating to security or anti-fraud features, timelimitations or expiry dates. The profile database can also contain otherdata and rules that are not associated with a given account but can beapplied to transfers conducted by universal transaction gateway 78 suchas rules relating to government regulatory compliance, privacyrestriction management, currency exchange data, non-monetary unit orcredit exchange data, service charges or other tariff data, datarelating to promotional and loyalty programs, interest rates foraccounts which have a debit, interest rates for accounts that have acredit.

Universal transaction gateway 78 also comprises a local account database90, whereby an account respective to device 54 (or subscriber S) ismaintained locally within gateway 78 that can be used as part of anytransfers that are effected by gateway 78. More than one local account90 can be associated with a given device 54 (or subscriber S).

Universal transaction gateway 78 also comprises a customer careinterface 94, whereby a customer care terminal 98 can interact universaltransaction gateway 78 in order to provision the access of device 54 touniversal transaction gateway 78. Customer care terminal 98 can beoperated by a carrier or network operator associated with electronicdevice 54 or subscriber S, or it can be a self-provisioning terminal 98so that the user of electronic device 54 can provision the access ofdevice 54 to universal gateway 78. The customer care interface 84 canalso be used to initiate the generation of reports produced by thereport and analysis engine 120 or retrieve reports stored in the reportand analysis database 122.

Universal transaction gateway 78 also comprises a local commissiondatabase 91, whereby commission accounts respective to device (orsubscriber S), financial server 118, or the operator of universaltransaction gateway 78 (not shown) is maintained locally within gateway78 that can be used as part of any transfers that are effected bygateway 78. More than one commission account can be associated with agiven device 54 (or subscriber S), financial sever 118, or the operatorof gateway 78. Transaction engine 82 thus connects to local commissiondatabase 91 for the purpose of effecting transfers to and from a givencommission account associated with a given device 54 (subscriber S),financial server 118, or operator of gateway 78.

Universal transaction gateway 78 also comprises a local credit accountdatabase 92, whereby at least one general credit account is maintainedlocally within gateway 78 that can be used as part of loans (or relatedtransactions) that are requested by a give device 54 (or subscriber S).Thus, for example, where a request for a loan is received from device 54(or subscriber S), then the loan funds can be obtained from local creditaccount database 92, and loan repayments made to loan credit accountdatabase 92 with appropriate interest payments. Loan credit accountdatabase 92 can be connected to a loan capital server 93, so thatcurrency (or other units, be they monetary or non-monetary credits) canbe transferred between loan credit account database 92 and server 93.Server 93 then, itself, can be connected to capital markets (e.g. stockexchanges or the like) to capitalize the amounts maintained on localcredit account database 92. In this manner, shares or other equity unitscan be bought, sold and traded via server 93, in universal transactiongateway 78 which are maintained in local credit account database 92.Alternatively, shares or other equity units in universal transactiongateway 78 can be bought, sold and traded by other subscribers S thatconnected to gateway 78, which are maintained in local credit accountdatabase 92. Universal transaction gateway 78 also comprises a voucherrecharge interface 102, whereby vouchers, such as prepaid vouchers thatcan be used for prepaid access by device 54 on core mobile network 62,can be redeemed via universal transaction gateway 78 according to thefeatures of universal transaction gateway 78. Voucher recharge interface102 is configured to interact with preexisting carrier vouchermanagement system(s) 106 so that no modification is needed to suchexisting voucher management system(s) 106. Thus, for example, where in apreexisting voucher management system 106, codes (e.g. via IVR, USSD,SMS, Web-browser) can be entered into preexisting voucher managementsystem 106 that correspond to a particular prepaid voucher, so thatvoucher management system 106 can “top-up” a particular pre-paidaccount, then voucher interface 102 will interact voucher managementsystem 106 to receive top-up commands as if that voucher managementsystem 106 were a known service control point (SCP) or the like. Theengine 82 can transfer funds received via interface 102 to an accountstored on one or more financial servers as well as a local accountstored in local database 90.

Universal transaction gateway 78 also comprises at least one financialserver interface 110 that can communicate over one or more differentwide area networks 114, such as the Internet, with a plurality ofdifferent financial servers 118-1, 118-2, 118-3 . . . 118-n(Collectively, financial servers 118, and generically financial server118). Each financial server 118 can be based on any existing orfuture-conceived type of financial server that can maintain a financialaccount associated with a particular type of financial account. Forexample, server 118-1 can be a server that belongs to VISA and maintainsone or more VISA credit card accounts that are provisioned to beassociated with electronic device 54 or subscriber S, and whereby anidentifier for each account is maintained in database 86 as beingassociated with electronic device 54 or subscriber S. In this example,financial server interface 110 is configured to interact with the VISAfinancial server 118-1 according to the predefined protocols andinterfaces that are already used to interact with VISA financial server118-1, such as by way of non-limiting example, a point-of-sale terminalmaintained by a commercial establishment that is configured to bothdebit and credit the account(s) maintained VISA financial server 118-1.Example protocols and interfaces include International Organization forStandardization (ISO) 8583 Standard for Financial Transaction CardOriginated Messages—Interchange message specifications and ISO 20022Financial Services as well as their derivatives. Example protocols andinterfaces also include interfaces based on electronic data interchange(EDI) including Electronic Data Interchange For Administration,Commerce, and Transport (EDIFACT) as well as their derivatives. Otherexemplary known protocols and interfaces include web-pages or emailmoney transfer interfaces as well as Application Programming Interfaces(API) based on CORBA (Common Object Request Broker Architecture) orSOAP/XML (Simple Object Access Protocol/Extensible Markup Language).

As another example, server 118-2 can be a server that belongs to a bankand maintains one or more personal bank accounts (e.g. a checking orsavings account) that are provisioned to be associated with electronicdevice 54 or subscriber S, and whereby an identifier for each account ismaintained in database 86 as being associated with electronic device 54or subscriber S. In this example, financial server interface 110 isconfigured to interact with the bank account financial server 118-2according to the predefined protocols and interfaces that are alreadyused to interact with bank account financial server 118-2, such as, byway of non-limiting example, a point-of-sale terminal maintained by acommercial establishment that is configured to both debit and credit thebank account(s) maintained bank account server 118-2. Example protocolsand interfaces include ISO 8583 Standard for Financial Transaction CardOriginated Messages—Interchange message specifications and ISO 20022Financial Services as well as their derivatives. Example protocols andinterfaces also include interfaces based on EDI including EDIFACT aswell as their derivatives. Other exemplary known protocols andinterfaces include web-pages or email money transfer interfaces as wellas Application Programming Interfaces based on CORBA or SOAP/XML.

As another example, server 118-3 can be a server that belongs to a wiretransfer company (such as Western Union) and maintains a wire-transferaccounts that are provisioned to be associated with electronic device 54or subscriber S, and whereby an identifier for each account ismaintained in database 86 as being associated with electronic device 54or subscriber S. In this example, financial server interface 110 isconfigured to interact with the wire transfer financial server 118-2according to the predefined protocols and interfaces that are alreadyused to interact with wire transfer financial server 118-2, such as, byway of non-limiting example, a terminal maintained by a Western Unionfranchisee that is configured to both debit and credit the account(s)maintained by wire transfer account server 118-2 in association with thewiring of funds for immediate conversion into cash. Example protocolsand interfaces include ISO 8583 Standard for Financial Transaction CardOriginated Messages—Interchange message specifications and ISO 20022Financial Services as well as their derivatives. Example protocols andinterfaces also include interfaces based on EDI including EDIFACT aswell as their derivatives. Other exemplary known protocols andinterfaces include web-pages or email money transfer interfaces as wellas Application Programming Interfaces based on CORBA or SOAP/XML.

As another example, server 118-4 can be an SCP that belongs to a carrierthat maintains a prepaid wireless account that is provisioned to beassociated with electronic device 54 (or subscriber S), and whereby anidentifier for that account is maintained in database 86 as beingassociated with electronic device 54 (or subscriber S). In this example,financial server interface 110 is configured to interact with SCPfinancial server 118-4 according to the predefined protocols andinterfaces that are already used to interact with an SCP, that isconfigured to both debit and credit the account(s) maintained by SCPserver 118-4 in association pre-paid funds that provide airtime or otherwireless services to electronic device 54 or subscriber S. Exampleprotocols include Application Programming Interfaces based on CORBA orSOAP/XML. The foregoing teachings relative to accessing accountstructures that are maintained by a network operator can be supplementedby the teachings of Applicant's copending application disclosed in US2004/0105424 “Method for implementing an Open Charging (OC) middlewareplatform and gateway system” the contents of which are incorporatedherein by reference. Those skilled in the art will recognize that thecarrier that operates server 118-4 can also operate core mobile network62. In alternative embodiments, a given SCP server 118-4 can be operatedother mobile networks (not shown) that are associated other devices (notshown) or subscribers (not shown) that are associated with a givendestination account that is distinct from device 54 or subscriber S.

As another example, server 118-n can be an data repository associatedwith a carrier's Operational Support System (OSS)/Business SupportSystem (BSS) infrastructure maintains an account that is provisioned tobe associated with electronic device 54 or subscriber S, and whereby anidentifier for that account is maintained in database 86 as beingassociated with electronic device 54 or subscriber S. In this example,financial server interface 110 is configured to interact with datarepository financial server 118-n according to the predefined protocolsand interfaces that are already used to interact with an data repositoryassociated with a carrier's OSS/BSS) infrastructure. Example protocolsinclude Application Programming Interfaces based on CORBA or SOAP/XML.The foregoing teachings relative to accessing account structures thatare maintained by a network operator can be supplemented by theteachings of Applicant's copending application disclosed in US2004/0105424 “Method for implementing an Open Charging (OC) middlewareplatform and gateway system” the contents of which are incorporatedherein by reference. Those skilled in the art will recognize that thecarrier that operates server 118-n can also operate core mobile network62. In alternative embodiments, a given server 118-n can be operatedother mobile networks (not shown) that are associated other devices (notshown) or subscribers (not shown) that are associated with a givendestination account that is distinct from device 54 or subscriber S.

It will now be understood that a plurality of other now known or futurecontemplated financial servers 118 are contemplated, and that where suchfinancial servers 118 are provided that interface 110 is configured tothe interfaces that have been predefined for those financial servers118. Also a plurality of the same types of servers can be provisioned aswell, so that a plurality of financial institutions and networkoperators can interface with the universal transaction gateway 78concurrently.

In a given embodiment, the messages or protocols supported via interface110 can be encrypted using encryption algorithms. Those skilled in theart will recognize that a variety of public-key or private-keyencryption algorithms can be used to encrypt the messages or protocolssupported via client interface 110.

Universal transaction gateway 78 also comprises an event record database87 that will store event records and logs that describe the details oftransactions processed via the universal transaction gateway as well asconfiguration or provisioning changes made to elements of the universaltransaction gateway 78 (for example, a modification to a given accountstored in the local account database 90). The event records and logs canbe retrieved for subsequent usage and/or inspection.

Universal transaction gateway 78 also comprises a reporting and analysisengine 120 that processes the event records and logs stored in eventrecord database 87 for the purpose of generating reports that pertain tothe operation of universal transaction gateway 78. Examples of reportsinclude settlement reports that contain a summary of transactions andthe associated aggregate values of funds transferred between networkoperators and between operators and financial institutions over a givenchronological period as well as settlement reports pertaining to anycommissions associated with the distribution of applicable servicecharges or tariffs. Those skilled in the art will recognize that avariety of other settlement reports can be generated to facilitateaudit, reconciliation, or dispute resolution processes. Other examplesor reports that can be generated include demographic reports thatprovide utilization data as a function of various parametric attributes(e.g. value of transaction, source account, destination account) for agiven subset of device, subscriber, or server (financial institution).The reporting and analysis engine 120 can either prepare reports upondemand or on a periodic basis. Reports can be stored on the reportsdatabase 122 for subsequent retrieval. In one embodiment, the reportingand analysis engine 120 can highlight potentially fraudulent activityand update the profile database 86 to impose additional controls orlimits as well as notify the operator and/or subscriber of suspectedfraudulent activity and generate a corresponding report on the reportsdatabase 122 for subsequent retrieval.

Universal transaction gateway 78 also comprises at least one sponsorserver interface 111 that can communicate over one or more differentwide area networks 114, such as the Internet, with a plurality ofdifferent sponsor servers 119 (Collectively, sponsor servers 119, andgenerically sponsor server 119). Each sponsor server 119 can be based onany existing or future-conceived type of sponsor server that canconfigure or maintain a sponsorship or marketing program in connectionwith a given financial transaction supported via universal transactiongateway 78. Example protocols and interfaces include web-pages as wellas Application Programming Interfaces (API) based on CORBA (CommonObject Request Broker Architecture) or SOAP/XML (Simple Object AccessProtocol/Extensible Markup Language).

Universal transaction gateway 78 also comprises a sponsorship database88 that maintains data that corresponds to sponsor server 119, includingdata representing a unique identifier for each sponsor and marketingprogram. More than one marketing program can be associated with sponsorserver 119. Other sponsorship and marketing information can also bemaintained by sponsor server 119, as need or desired, including theparametric attributes and rules associated with a given marketingprogram (e.g. the percentage of applicable service charges and fees thatwill be sponsored), inclusion lists and ranges, exclusion lists andranges, the nature of the marketing message to be conveyed andapplicable messaging media to be used (e.g. SMS, USSD, MultimediaMessage Service, e-mail).

Referring now to FIG. 3, a method of provisioning a universaltransaction gateway is provided in the form of a flowchart and indicatedgenerally at 300. Method 300 can be implemented on system 50 in order toeffect a financial transaction, but it should be understood thatvariations to at least one of method 300 and system 50 are contemplated.

At block 305, device provisioning is received. Block 305 is performed inassociation with device 54 or subscriber S, to provide at least a uniqueidentifier (e.g. International Mobile Equipment Identity (IMEI),International Mobile Subscriber Identity (IMSI), Mobile SystemsInternational Subscriber Identity Number (MSISDN), Uniform ResourceIdentifier (URI) (e.g. John.Doe@network_operator.com)) for device 54 orSubscriber S so that the unique identifier can be used in associationwith financial transactions conducted by gateway 78.

At block 310, financial server provisioning is received (for example,service or tariff elements which are specific financial server(s) 118).Block 310 is performed in association with the unique identifier fromblock 310 as well as in relation to one or more accounts maintained byfinancial server(s) 118, so that a particular account maintained byfinancial server(s) 118 is associated with device 54 or subscriber S.

At block 315, other provisioning data associated with the universaltransaction gateway 78 is received (for example, currency exchange data,data relating to promotional and loyalty programs, data relating tosponsorship and marketing programs, interest rates for accounts whichhave a debit, interest rates for accounts that have a credit).

At block 320, the provisioning data is stored. Block 320 comprisescompiling the data received at block 305, 310, and 315 and storing thatdata on profile database 86, sponsorship database 88, local database 90,or commission database 91.

The provisioning data at block 315 can additionally include any uniqueexpected instructions from device 54 or subscriber S as well asfinancial servers 118 in relation to transactions to be performed on theaccounts maintained by provisioned financial servers 118 or theuniversal transaction gateway 78.

It should be understood that all or part of method 300 can bere-performed in order to provide updates or modifications to the data onprofile database 86, sponsorship database 88, local database 90, orcommission database 91. It should also be understood that data relevantto the operation of the universal financial transaction gateway 78 asmaintained by profile database 86, sponsorship database 88, localdatabase 90, or commission database 91 can be generated and stored usingother methodologies other than method 300. Of note is that not allblocks of method 300 need be performed in order to generate datarelevant to the operation of the universal financial transaction gateway78 as maintained by profile database 86, sponsorship database 88, localdatabase 90, or commission database 91

Table I shows a purely exemplary, and simplified, set of contents thatcan be generated as a result of performing method 300.

TABLE I Exemplary Contents of Profile database 86 Field Number FieldName Field Contents 1 Identifier of +1-234-567-8901 Device (orSubscriber) 2 Financial VISA Account Number Server 118-15555-5555-5555-5555; Identifier Currency: United States Dollars 3Financial 1 Server 118-1 Account Menu Identifier 4 Financial XYZ BankCo. Account Server 118-2 Number Identifier 4444-4444-4444-4444;Currency: United States Dollars 5 Financial 2 Server 118-2 Account MenuIdentifier 6 USSD *9999# Transfer Request String 7 Financial AirMAXOperator Server 118-4 +1-234-567-8901; Identifier Currency: UnitedStates Dollars 8 Financial 3 Server 118-4 Account Menu Identifier 9Exclusion List MSISDN: +1-234-789-0123 10 Transfer Total: $100 per dayLimits Per destination account: $10 per day 11 Promotion IDsAir_time_promotion_a 12 Default United States Dollars Currency 13 ClassRetail Subscriber

Field 1 of Table I, “Identifier of Device or Subscriber” contains aunique identifier for device 54 (or another applicable device) orsubscriber S, and in the present example includes theMSISDN+1-234-567-8901.

Field 2 of Table I, “Financial Server 118-1 Identifier” contains aunique identifier for the account on Financial Server 118-1 that is tobe associated with device 54 or subscriber S. Field 2 also contains, thecurrency associated with account on Financial Server 118-1.

Field 3 of Table I, “Financial Server 118-1 Menu Identifier” contains acode or sequence that will be used to identify the financial server inField 2 in a menu.

Field 4 of Table I, “Financial Server 118-2 Identifier” contains aunique identifier for the account on Financial Server 118-2 that is tobe associated with device 54 or subscriber S. Field 4 also contains, thecurrency associated with account on Financial Server 118-2.

Field 5 of Table I, “Financial Server 118-2 Menu Identifier” contains acode or sequence that will be used to identify the financial server inField 4 in a menu.

Field 6 of Table I, “USSD Transfer Request String” contains a USSD codethat is recognized by core mobile network 62 as indicating that atransfer via gateway 78 is being invoked by device 54.

Field 7 of Table I, “Financial Server 118-4 Identifier” contains aunique identifier for the account on Financial Server 118-4 that is tobe associated with device 54 or subscriber S. Field 7 also contains, thecurrency associated with account on Financial Server 118-4.

Field 8 of Table I, “Financial Server 118-4 Menu Identifier” contains acode or sequence that will be used to identify the financial server inField 7 in a menu.

Field 9 of Table I, “Exclusion List” contains an identifier associatedwith an account that is recognized by the universal transfer gateway asan account to which a transfer request from device 54 or subscriber S(as identified per Field 1) will be refused.

Field 10 of Table I, “Transfer Limits” contains parametric informationwith regards to transfer limits over a given chronological periodassociated with device 54 or subscriber S (as identified per Field 1).

Field 11 of Table I, “Promotion IDs” contains parametric informationpertaining to promotions or loyalty programs that may be invokeddepending on the nature of a given transfer request associated withdevice 54 or subscriber S (as identified per Field 1).

Field 12 of Table I, “Default Currency” contains parametric informationpertaining to the default currency associated with a given transferrequest associated with device 54 or subscriber S (as identified perField 1).

Field 13 of Table 1, “Class”, contains the class of subscriber, and inthe present example describes the subscriber to be a ‘retailsubscriber’.

Table 2 shows another complementary, purely exemplary, and simplified,set of contents that can be generated as a result of performing method300.

TABLE 2 Exemplary Contents of Profile database 86 Field Number FieldName Field Contents 1 US to Euro 0.64102 Rate 2 Euro to US 1.45301 Rate3 Non-Monetary 10.2 Unit A credit to US dollar 4 US dollar to 0.098039Non-Monetary Unit A credit 5 Service Retail Subscriber to RetailCharge - Subscriber; Retail to retail 1% applied against fundstransferred 6 Service Retail Subscriber to Financial Charge - Server118-1 retail to $2.00 default currency of financial financial server118-1 applied server (visa) against donor account 7 Credit InterestCredit; Rate 0.75% per year effective, to be applied monthly to non-zero accounts in local databases 8 Debit Interest Debit; Rate 2.5% peryear effective, to be applied daily to non-zero accounts in localdatabases 9 Promotions Air₋ time₋ promotion₋ a; $2 of default currencyto be credited to local account for every 10 transactions. 10 Regulatory$200 per day Compliance - South Africa

Field 1 of Table 2, “US to Euro Rate” contains the US dollar to Euroexchange rate, and in the present example includes a conversion rate of1 US dollar to 0.64102 Euros.

Field 2 of Table 2, “Euro to US Rate” contains the Euro to US exchangerate, and in the present example includes a conversion rate of 1 Euro to1.45301 dollars.

Field 3 of Table 2, “Non-Monetary Unit A credit to US Dollar” containsthe non-monetary unit A credit to US dollar exchange rate, and in thepresent example includes a conversion rate of 10.2 non-monetary unit Acredits to 1 US dollar.

Field 4 of Table 2, “US Dollar to Non-Monetary Unit A credit” containsthe US dollar to non-monetary unit A credit exchange rate, and in thepresent example includes a conversion rate of 1 US dollar to 0.098039non-monetary unit A credits.

Field 5 of Table 2, “Service Charge—Retail to retail” contains theretail subscriber to retail subscriber transfer service charge, and inthe present example is equal to 1% to be applied against the funds to betransferred prior to deposit in the destination account.

Field 6 of Table 2, “Service Charge—Retail to financial sever (visa)”,contains the retail subscriber to financial server 118-1 transferservice charge, and in the present example is equal to $2.00 of thedefault currency associated with financial server 118-1 to be appliedagainst the donor account.

Field 7 of Table 2, “Credit Interest Rate”, contains the interest rateto be applied to non-zero credit accounts stored in the local database,and in the present example is equal to an effective annual interest rateof 0.75% to be applied monthly.

Field 8 of Table 2, “Debit Interest Rate”, contains the interest rate tobe applied to non-zero debit accounts stored in the local database, andin the present example is equal to an effective annual interest rate of2.5% to be applied daily

Field 9 of Table 2, “Promotions”, describes the configuration of a givenpromotion (or promotions), Air_time_promotion_A, and in the presentexample is equal to $2 of subscriber's default currency to be creditedto the subscriber's local account for every 10 financial transactionsexecuted by the universal transaction gateway 78.

Field 10 of Table 2, “Regulatory Compliance—South Africa”, describes theconfiguration of the regulatory compliance rules to be applied fortransactions involving a given jurisdiction, and in the present exampleis described as a transactional limit of $200 per day.

It will be apparent that several configured parametric attributes thatgovern the operation of a given transfer as executed by the universaltransaction gateway 78 may be specified in a more granular fashion. Forexample, currency exchange rates can be specified for each financialserver 118 or interest rates can be specific per currency or geography(country).

Table 3a shows another complementary, purely exemplary, and simplified,set of contents that can be generated as a result of performing method300.

TABLE 3a Exemplary Contents of local database 90 Field Number Field NameField Contents 1 Identifier +1-234-567-8901; account 00aa2 2 Account$5.50 3 Currency US Dollars

Field 1 of Table 3a, “Identifier” contains the identifier associatedwith a device 54 or subscriber S or financial server 118, and in thepresent example includes an MSISDN identifier+1-234-567-8901 and anaccount identifier 00aa2 associated with a subscriber.

Field 2 of Table 3a, “Account” contains the debit or credit amount in agiven currency for a given device 54 or subscriber S or financial server118, and in the present example includes a value of $5.50.

Field 3 of Table 3a, “Currency” contains the associated non-monetaryunit or currency for a given account, and in the present exampleincludes a ‘US Dollars’.

Table 3a shows another complementary, purely exemplary, and simplified,set of contents that can be generated as a result of performing method300.

TABLE 3b Exemplary Contents of local database 90 Field Number Field NameField Contents 1 Identifier +1-234-567-8901; account 00bb2 2 Account−$21.01 3 Currency US Dollars

Field 1 of Table 3b, “Identifier” contains the identifier associatedwith a device 54 or subscriber S or financial server 118, and in thepresent example includes an MSISDN identifier+1-234-567-8901 and anaccount identifier 00bb2 associated with a subscriber.

Field 2 of Table 3b, “Account” contains the debit or credit amount in agiven currency for a given device 54 or subscriber S or financial server118, and in the present example includes a value of −$21.01

Field 3 of Table 3b, “Currency” contains the associated non-monetaryunit or currency for a given account, and in the present exampleincludes a ‘US Dollars’.

Table 4 shows another complementary, purely exemplary, and simplified,set of contents that can be generated as a result of performing method300.

TABLE 4 Exemplary Contents of commission database 91 Field Number FieldName Field Contents 1 Identifier Financial Server 118-1; 000A-353K3S-9523D 2 Account $45323.13 3 Currency US Dollars

Field 1 of Table 4, “Identifier” contains the identifier associated witha device 54 or subscriber S or financial server 118, and in the presentexample includes an alphanumeric identifier 000A-353K3S-9523D associatedwith financial server 118-1.

Field 2 of Table 4, “Account” contains the debit or credit amount in agiven currency for a given device 54 or subscriber S or financial server118, and in the present example includes a value of $45323.13.

Field 3 of Table 4, “Currency” contains the associated non-monetary unitor currency for a given account, and in the present example includes a‘US Dollars’.

Table 5 shows another complementary, purely exemplary, and simplified,set of contents that can be generated as a result of performing method300.

TABLE 5 Exemplary Contents of Profile database 86 Field Number FieldName Field Contents 1 Identifier of +1-890-234-5678 Device or Subscriber2 Financial ABC Bank Co. Account Server 118-5 Number Identifier (not8888-8888-8888-8888; shown) Currency: United States Dollars 3 Financial1 Server 118-5 Account Menu Identifier 4 USSD *9999# Transfer RequestString 5 Financial AirMAX Operator Server 118-4 +1-890-234-5678;Identifier Currency: United States Dollars 6 Financial 2 Server 118-4Account Menu Identifier 7 Transfer Total: $1000 per day; Limits Perdestination account: $20 per day to retail subscribers; Not permitted totransfer funds to other reseller accounts. 8 PromotionsReseller_promotion_a; $10 per $1000 value transferred 9 Default USDollars Currency 10 Class Reseller

Field 1 of Table 5, “Identifier of Device or Subscriber” contains aunique identifier for device 54 (or another applicable device) orsubscriber S, and in the present example includes theMSISDN+1-890-234-5678.

Field 2 of Table 5, “Financial Server 118-5 Identifier” contains aunique identifier for the account on Financial Server 118-5 that is tobe associated with device 54 or subscriber S. Field 2 also contains, thecurrency associated with account on Financial Server 118-5.

Field 3 of Table 5, “Financial Server 118-5 Menu Identifier” contains acode or sequence that will be used to identify the financial server inField 2 in a menu.

Field 4 of Table 5, “USSD Transfer Request String” contains a USSD codethat is recognized by core mobile network 62 as indicating that atransfer via gateway 78 is being invoked by device 54.

Field 5 of Table 5, “Financial Server 118-4 Identifier” contains aunique identifier for the account on Financial Server 118-4 that is tobe associated with device 54 or subscriber S. Field 5 also contains, thecurrency associated with account on Financial Server 118-4.

Field 6 of Table 5, “Financial Server 118-4 Menu Identifier” contains acode or sequence that will be used to identify the financial server inField 5 in a menu.

Field 7 of Table 5, “Transfer Limits” contains parametric informationwith regards to transfer limits over a given chronological periodassociated with device 54 or subscriber S (as identified per Field 1).In the present example, the field indicates that the device orsubscriber is limited to $1000 per day; $20 to a given retail subscriberaccount.

Field 8 of Table 5, “Promotions” contains parametric informationpertaining to promotions or loyalty programs that may be invokeddepending on the nature of a given transfer request associated withdevice 54 or subscriber S (as identified per Field 1). In the presentexample, the field indicates that the device or subscriber is associatedwith Reseller_promotion_a′ with the parametric attributes of apromotional value of $10 per $1000 of value transferred.

Field 9 of Table 5, “Default Currency” contains parametric informationpertaining to the default currency associated with a given transferrequest associated with device 54 or subscriber S (as identified perField 1).

Field 10 of Table 5, “Class”, contains the class of subscriber, and inthe present example describes the subscriber to be a ‘resellersubscriber’.

Table 6 shows another complementary, purely exemplary, and simplified,set of contents that can be generated as a result of performing method300.

TABLE 6 Exemplary Contents of sponsorship database 88 Field Number FieldName Field Contents 1 Identifier Sponsor Server 119; FG001A-98DDJ;Patriotic Industries; 2 Program Presidents_day_promotion_A Name 3Inclusion List Financial Server 118-2; XYZ Bank Co.; 4 Program 100% ofservice charges and fees to and from accounts in the inclusion list;00:00 Feb. 16, 2009 to 23:59 Feb. 16, 2009 5 Marketing “Your financialtransaction Message was free, courtesy of Patriotic Industries”; via SMSto associated devices or subscribers

Field 1 of Table 6, “Identifier” contains the identifier of the sponsorserver 119, and in the present example includes an alphanumericidentifier FG001A-98DDJ associated with financial server 119.

Field 2 of Table 6, “Program Name” contains the identifier of a givenprogram associated with the sponsor server 119 in Field 1, and in thepresent example includes an alphanumeric identifier‘Presidents_day_promotion_A’.

Field 3 of Table 6, “Inclusion List” contains the inclusion list for theprogram identified in Field 2, and in the present example includes theidentifier associated with financial server 118-2, XYZ Bank Co.

Field 4 of Table 6, “Program” contains the rules governing thesponsorship program, and in the present example indicates that thesponsorship program will address 100% of service charges and fees to andfrom accounts in the inclusion list identified in Field 3, on Feb. 16,2009.

Field 5 of Table 6, “Marketing Message” contains the nature of themarketing message associated with the program identified in Field 2, andin the present example indicates that a SMS message is to be sent to theassociated device or subscriber.

Referring now to FIG. 4, a method of conducting a transaction isprovided in the form of a flowchart and indicated generally at 400.Method 400 can be implemented on system 50 and invoked via device 54,and is typically performed by universal transaction gateway 78. Method400 can utilize profile database 86 that is generated by method 300 orother means. It should be understood that variations to at least one ofmethod 400 and system 50 are contemplated.

Block 405 comprises receiving a transfer request menu. In system 50, andin the present non-limiting example, the transfer request menu isreceived in the form of the USSD code *9999# which is entered intodevice 54 and sent to core mobile network 62. Code *9999# is uniquelyrecognized by core mobile network 62 as being associated with universaltransaction gateway 78. Interface 80 will thus receive the USSD code*9999# and identify its source as being device 54 via theMSISDN+1-234-567-8901 unique identifier associated with device 54.

At block 410 a menu is generated in response to the request at block410. Continuing with the present, non-limiting example, engine 82 can beconfigured to implement block 410 by generating one (or more) USSD menusto be sent to and generated on display 208 of device 54 using thecontents of Table I as stored in profile database 86. A series of menuscan be generated that include for example the following:

Menu 1: “Select the Account from which you are transferring funds; 1.VISA Account 5555-5555-5555-5555; 2. XYZ Bank Co. Account Number4444-4444-4444-4444”;

Menu 2: “Select the Account to which you are transferring funds; 1. VISAAccount 5555-5555-5555-5555; 2. XYZ Bank Co. Account Number4444-4444-4444-4444”;

Menu 3: “Enter the amount of funds, in US Dollars, that you aretransferring”

Responses to each menu are provided at block 415. Upon responding toeach menu item the “Send” or equivalent key on device 54 is depressed tosend the responses back to engine 82.

At block 420, the request is validated. In the present example, block420 is performed by engine 82 which checks the validity and formation ofthe request. For example, as part of block 420 engine 82 can verify thatthe “from” account and the “to” account are not identical. As anotherexample, engine 82 can query the reporting and analysis engine 120 forthe purpose of determining if a given transaction is associated withfraudulent activity. Other validation checks can include: whether thetarget account is on the exclusion list for a given device 54 orsubscriber S, whether the amount transferred exceeds the limitsassociated with a given device 54 or subscriber S, whether the amountstransferred complies with regulatory requirements, and/or whether theclass or category of the account associated with the “from” account ispermitted to undertake the requested financial transaction with the “to”account. If available, other criteria for verifying or validating if thetransfer request is well-formed can be derived from any such criteria asstored in profile database 86.

If the request is not well-formed or otherwise validated at block 420,then at block 425 a determination is made that the request is notacceptable and the request is refused at block 430, and typically aresponse would be sent indicating as such. In the present non-limitingexample, the refusal notice would be sent to device 54 via USSD, SMS, ore-mail.

If the request is validated at block 420, then at block 425 adetermination is made that the request is acceptable and then at block435 the request is fulfilled, or at least an attempt to do so iseffected. Assuming that the request from block 415 was a request totransfer $500 from XYZ Bank Co. Account Number 4444-4444-4444-4444 toVISA Account 5555-5555-5555-5555, then at block 435, via an interface110 corresponding to server 118-2, engine 82 will access server 118-2 todebit XYZ Bank Co. Account Number 4444-4444-4444-4444 in the amount$500, and if that transaction is successful, then engine 82 will, via aninterface 110 corresponding to server 118-1, access server 118-1 tocredit VISA Account 5555-5555-5555-5555 in the amount $500 less anyapplicable service charges and tariffs. To the extent that thedestination account is associated with a different currency relative tothe source account, the amount credited to the destination account wouldbe modified by the applicable currency exchange rate.

In an embodiment the service charges or tariffs can be deducted from thesource or “from” account. With reference to the example, at block 435,the amount debited via financial server 118-2 will be $500 plus anyapplicable service charges and tariffs and the amount credited viafinancial server 118-1 will be $500.

In an embodiment the associated service charges or tariffs can bedebited or credited to an account accessible via interface 110 or to anaccount stored by universal transaction gateway 78. For example, withreference to the example, at block 435, the associated service chargesand tariffs can be credited to an account associated with a financialserver 118 on commission database 91. If any of the foregoing fails atblock 435, engine 82 will perform any appropriate roll-back and send afailure notice to device 54 at block 445. (If a rollback of, forexample, the debiting of $500 from XYZ Bank Co. Account Number4444-4444-4444-4444 is not successful, where such a rollback wasattempted because a crediting of VISA Account 5555-5555-5555-5555 wasnot successful, then engine 82 can be configured to store a $500“credit” in an association with an account specific to device 54 that ismaintained in local account database 90. This scenario could occur, forexample, if connectivity over network 114 were to fail upon completionof the debiting of server 118-2 but prior to the crediting of server118-1.)

If, however, steps taken at 435 were successful, then a confirmationnotice is sent to device 54 at block 450.

In an embodiment, at least one event record or log that describes thedetails of a successful or unsuccessful transactions processed via theuniversal transaction gateway will be generated by engine 82 and storedin event record database 87 for subsequent usage and/or inspection.

As another example, the provisioning of one or more accounts at method300 can be dynamic, such that, for example, as part of performing block415, a specific destination account to which funds can be transferredcan be specified. The destination account for a transfer could bedynamically specified at block 415 to include an IMEI or MSISDN ofanother device so that funds are transferred to a prepaid or postpaidaccount associated with that other device. Alternatively, thedestination account for a transfer could be dynamically specified atblock 415 to include a VISA account number so that funds are transferredto that specified VISA account.

As another example, the successful requests can be associated with aloyalty or promotion program. As a result of block 435, the state orcounter of the applicable loyalty or promotion program can be updatedaccordingly. For example, a given loyalty promotion‘Air_time_promotion_a’ can be configured to credit the equivalent of $2in the default currency associated with device 54 or subscriber S in adesignated pre-paid account hosted by financial server 118-4 (subject tocurrency exchange rates if the currency associated with the designatedpre-paid account is different than the currency associated with theloyalty promotion) for every 10 financial transfers undertaken by device54 or subscriber s over a given chronological period (e.g. a month).

This example can be applicable or desired to transfer prepaid funds froma prepaid account stored on an SCP server 118 associated with device 54to another prepaid funds account stored on an SCP server 118 that isassociated with another device like device 54. In another embodiment,the example can be applicable or desired to transfer prepaid funds froma prepaid account stored on an SCP server 118 associated with device 54to another prepaid funds account to a distinct SCP server 118 associatedwith another device like device 54 maintained by another networkoperator. It will be apparent that the associated devices, subscribers,and financial servers may be located in different countries orjurisdictions. A vast variety of other use-cases will now occur to thoseskilled in the art.

In an embodiment the universal transaction gateway 78 can be used toeffect the distribution of monetary or non-monetary unit credits viatransfers between intermediary accounts accessible via interface 110 orstored on the universal transaction gateway 78 via local database 90 orcommission database 91. For example, a reseller subscriber can effecttransfers to retail subscribers by invoking transfers from a givensource account maintained in local database 90 to a given accountassociated with a retail subscriber either maintained in local database90 or accessible via interface 110. Associated service charges or tariffcharges can be credited to or debited from either the source ordestination account. Associated service charges or tariff charges canalso be credited to or debited from an account maintained by commissiondatabase 91. A vast variety of other use-cases will now occur to thoseskilled in the art.

Referring now to FIG. 5, a method of conducting a transaction invokedvia a financial server 118 is provided in the form of a flowchart andindicated generally at 500. For example, a financial server mayperiodically top-up a given air-time account associated with a device 54or subscriber S. Method 500 can be implemented on system 50, and istypically performed by universal transaction gateway 78. Method 500 canutilize profile database 86 that is generated by method 300 or othermeans. It should be understood that variations to at least one of method500 and system 50 are contemplated.

Block 505 comprises receiving a request from a financial server 118 thatcontains parametric information that indicates the destination accountvia a unique identifier, the amount to be transferred, and the currencyassociated with the amount to the transferred.

At block 510, the request is validated. In the present example, block510 is performed by engine 82 which checks the validity and formation ofthe request. For example, as part of block 520 engine 82 can verify thatthe “from” account and the “to” account are not identical. As anotherexample, engine 82 can query the reporting and analysis engine 120 forthe purpose of determining if a given transaction is associated withfraudulent activity. Other validation checks can include: whether thetarget account is on the exclusion list for a given financial server118, whether the amount transferred exceeds the limits associated with agiven device 54 or subscriber S, and whether the amounts transferredcomplies with regulatory requirements. If available, other criterion forverifying or validating if the transfer request is well-formed can bederived from any such criteria as stored in profile database 86.

If the request is not well-formed or otherwise validated at block 510,then at block 515 a determination is made that the request is notacceptable and the request is refused at block 520, and typically aresponse would be sent indicating as such. In the present non-limitingexample, the refusal notice would be sent to device 54 via USSD, SMS, ore-mail and/or the financial server via an applicable interface andprotocol.

If the request is validated at block 510, then at block 515 adetermination is made that the request is acceptable and then at block530 the request is fulfilled, or at least an attempt to do so iseffected. Assuming that the request from block 505 was a request totransfer $10 from XYZ Bank Co. Account Number 4444-4444-4444-4444 toAirMax Operator Pre-Paid Account+1-234-567-8901, then at block 530, viaan interface 110 corresponding to server 118-2, engine 82 will accessserver 118-2 to debit XYZ Bank Co. Account Number 4444-4444-4444-4444 inthe amount $10, and if that transaction is successful, then engine 82will, via an interface 110 corresponding to server 118-4, access server118-4 to credit AirMax Operator Pre-Paid Account+1-234-567-8901 in theamount $10 less any applicable service charges and tariffs. To theextent that the destination account is associated with a differentcurrency relative to the source account, the amount credited to thedestination account would be modified by the applicable currencyexchange rate.

In an embodiment the service charges or tariffs can be credited ordebited from an account maintained by commission database 91. Withreference to the example, at block 530, the applicable service chargesand tariffs can be credited to an account associated with financialserver 118-2 maintained by commission database 91.

As another example, the successful requests can be associated with aloyalty or promotion program. As a result of block 530, the state orcounter of the applicable loyalty or promotion program can be updatedaccordingly. For example, a given loyalty promotion‘Air_time_promotion_a’ can be configured to credit the equivalent of $2in the default currency associated with device 54 or subscriber S in adesignated pre-paid account hosted by financial server 118-4 (subject tocurrency exchange rates if the currency associated with the designatedpre-paid account is different than the currency associated with theloyalty promotion) for every 10 financial transfers associated withdevice 54 or subscriber s over a given chronological period (e.g. amonth).

If any of the foregoing fails at block 530, engine 82 will perform anyappropriate roll-back and send a failure notice to device 54 orsubscriber S or financial server 118 at block 545. (If a rollback of,for example, the debiting of $10 from XYZ Bank Co. Account Number4444-4444-4444-4444 is not successful, where such a rollback wasattempted because a crediting of AirMax Operator Pre-PaidAccount+1-234-567-8901 was not successful, then engine 82 can beconfigured to store a $10 “credit” in an association with an accountspecific to device 54 or subscriber S that is maintained in localaccount database 90. This scenario could occur, for example, ifconnectivity over network 114 were to fail upon completion of thedebiting of server 118-2 but prior to the crediting of server 118-4.)If, however, steps taken at 530 were successful, then a confirmationmessage is sent to financial server 118-2 at block 550 and/or device 54or subscriber S.

In an embodiment, at least one event record or log that describes thedetails of a successful or unsuccessful transactions processed via theuniversal transaction gateway will be generated by engine 82 and storedin event record database 87 for subsequent usage and/or inspection.

Referring now to FIG. 6, a method of conducting a loan transactioninvoked via device 54 is provided in the form of a flowchart andindicated generally at 600. Method 600 can be implemented on system 50,and is typically performed by universal transaction gateway 78. Method600 can utilize profile database 86 that is generated by method 300 orother means. It should be understood that variations to at least one ofmethod 600 and system 50 are contemplated.

Block 605 comprises receiving a request menu. In system 50, and in thepresent non-limiting example, the request menu is received in the formof the USSD code *9999# which is entered into device 54 and sent to coremobile network 62. Code *9999# is uniquely recognized by core mobilenetwork 62 as being associated with universal transaction gateway 78.Interface 80 will thus receive the USSD code *9999# and identify itssource as being device 54 via the MSISDN+1-234-567-8901 uniqueidentifier associated with device 54.

At block 610 a menu is generated in response to the request at block610. Continuing with the present, non-limiting example, engine 82 can beconfigured to implement block 610 by generating one (or more) USSD menusto be sent to and generated on display 208 of device 54 using thecontents of Table I as stored in profile database 86. A series of menuscan be generated that include for example the following:

Menu 1: Select the financial transaction: 1. Loan/Borrow Funds. 2.Account Balance.

Menu 2: “Select the Account from which you are borrowing funds; 1. VISAAccount 5555-5555-5555-5555; 2. XYZ Bank Co. Account Number4444-4444-4444-4444”;

Menu 3: “Enter the amount of funds, in US Dollars, that you would liketo borrow”

Responses to each menu are provided at block 615. Upon responding toeach menu item the “Send” or equivalent key on device 54 is depressed tosend the responses back to engine 82.

At block 620, the request is validated. In the present example, block620 is performed by engine 82 which checks the validity and formation ofthe request. For example, as part of block 620, where Menu 2 is beinginvoked, engine 82 can verify that the “from” account and the “to”account are not identical. As another example, engine 82 can query thereporting and analysis engine 120 for the purpose of determining if agiven transaction request is associated with fraudulent activity. Othervalidation checks can include: whether the target account is on theexclusion list for a given device 54 or subscriber S, whether the amounttransferred exceeds the limits associated with a given device 54 orsubscriber S, and whether the amounts transferred complies withregulatory requirements. As another example, engine 82 can verifywhether the amount of funds being requested to be borrowed using Menu 3is a positive or negative amount. If a negative amount, the requestwould not be validated. If available, other criterion for verifying orvalidating if the transfer request is well-formed can be derived fromany such criteria as stored in profile database 86.

If the request is not well-formed or otherwise validated at block 620,then at block 625 a determination is made that the request is notacceptable and the request is refused at block 630, and typically aresponse would be sent indicating as such. In the present non-limitingexample, the refusal notice would be sent to device 54 via USSD, SMS, ore-mail.

If the request is validated at block 620, then at block 625 adetermination is made that the request is acceptable and then at block635 the request is fulfilled, or at least an attempt to do so iseffected. Assuming that the request from block 615 was a request toborrow $100 from XYZ Bank Co. Account Number 4444-4444-4444-4444 and tocredit that amount to an account (e.g. an account specific to device 54or subscriber S) that is maintained in local account database 90, thenat block 635, via an interface 110 corresponding to server 118-2, engine82 will access server 118-2 to debit XYZ Bank Co. Account Number4444-4444-4444-4444 in the amount $100, and if that transaction issuccessful, then engine 82 will credit an account specific to device 54that is maintained in local account database 90 in the amount $100 lessany applicable service charges and tariffs. To the extent that thedestination account is associated with a different currency relative tothe source account, the amount credited to the destination account wouldbe modified by the applicable currency exchange rate.

In an embodiment the service charges or tariffs can be deducted from thesource or “from” account. With reference to the example, at block 635,the amount debited via financial server 118-2 will be $100 plus anyapplicable service charges and tariffs and the amount credited to theaccount maintained by local database 90 will be $100. If any of theforegoing fails at block 635, engine 82 will perform any appropriateroll-back and send a failure notice to device 54, subscriber S, orfinancial server 118 at block 645.

If, however, steps taken at 635 were successful, then a confirmationnotice is sent to device 54 at block 650. The device 54 or subscriber Smay in turn elect to invoke other financial transfers to transfer thefunds to or from the account specific to device 54 or subscriber S thatis maintained in local account database 90 per the capabilities accordedby the universal transaction server 78.

It should now be apparent that method 600 can be modified to utilizeloan credit account database 92.

In an embodiment, at least one event record or log that describes thedetails of a successful or unsuccessful transactions processed via theuniversal transaction gateway will be generated by engine 82 and storedin event record database 87 for subsequent usage and/or inspection.

In an embodiment, a given request invoked by a device 54 or subscriber Scan be effected using an account maintained by universal transactiongateway 78 via local database 90 or commission database 91. Theresulting transfer can result in either a debit or credit of either amonetary currency or non-monetary unit. For example, a device 54 orsubscriber S can request that an amount be transferred to an accountmaintained by financial server 118 by debiting an account maintained bylocal database 90. As another example, a device 54 or subscriber S canrequest that an amount be transferred to a given destination account(‘account a’) associated with device 54 or subscriber S (as identifiedvia a unique identifier) maintained by local database 90 by debitinganother source account (‘account b’) associated with device 54 orsubscriber S (as identified via a unique identifier) maintained by localdatabase 90. In turn, device 54 or subscriber S can effect additionalfinancial transactions using the credit amount in ‘account a’ (e.g.transferring amounts to accounts associated with other devices orsubscribers or transferring amounts to accounts accessible via interface110). A vast variety of other “use cases” will now occur to thoseskilled in the art.

To the extent that debit or credit amounts are maintained in the localaccount database 90 or commission database 91, the engine 82 canperiodically accrue applicable interest charges per the interest dataprovisioned in profiler server 86.

While the foregoing discusses certain embodiments, it is to beunderstood that such embodiments are by way of example only, and thatvariations, combinations, and subsets thereof are contemplated. Forexample, while the specific example above referred to a USSD interfacebeing implemented at interface 80, other types of interfaces can beimplemented, as previously discussed. As another example, it should beunderstood that any number of financial server 118 accounts can beassociated with device 54. Such financial server 118 accounts need notactually belong to subscriber S of device 54. For example, a financialserver 118 account can be associated with a relative of the user ofdevice 54, and database 86 can be configured to only allow “crediting”of that other financial server 118, and to disallow debiting. In thismanner, funds can be “wired” to relatives via a traditional wirelesstelephone interface. As a related example, where the financial server118 is a Western Union server, then the transfer of funds could resultin cash being available to be picked up in the usual manner from aWestern Union outlet. As another example, not all of the elements withingateway 78 need be provided in a given installation.

In a given embodiment, a given financial transaction can be subject toservice charges and tariffs. Service fees can be positive or negativeand can either be added to the amount to be deducted from thecontributor account, affect the value that is transferred or exchangedbefore being deposited into the destination account, or be credited toor debited from another account such as an account maintained by thecommission database 91. A service charge fee can be defined as apercentage of the value of the transaction or as a flat fee, or tieredas a function of the transaction value. Other possible variations onservice fees are possible. The application of negative or positiveservice charge fees as well as the ability to apply charges tocontributor, destination, or other accounts supports a variety of usecases. One example would consist of a scenario whereby a resellersubscriber would receive $100 of a given currency or one-hundred creditsof a given non-monetary unit in an account stored in database 90 on theuniversal transaction gateway 78. The reseller subscriber can in turntransfer $100 of a given currency or one-hundred credits of a givennon-monetary unit to a retail subscriber account as stored in financialserver 118-4 and be deducted only $90 of a given currency or 90 creditsof a given non-monetary whereby the application of a negative $10 or tencredit surcharge amounts to an effective commission to the resellersubscriber. Another example is a scenario whereby a given financialtransaction initiated by a device 54 or subscriber S with a financialserver 118 would result in the applicable service charges or tariff feesto be credited to an account associated with financial server 118maintained by commission database 91. As a variant to the precedingexample, the applicable service charges or tariff fees can beapportioned among more than one account. For example, the applicableservice charges or tariff fees can be credited to an account associatedwith financial server 118 maintained by commission database 91 as wellas another designated account associated with the operator of universaltransaction gateway 78 maintained by commission database 91 per criteriamaintained in profile database 86. A vast variety of other use-caseswill now occur to those skilled in the art.

In an embodiment the associated service charges or tariffs associatedwith a given financial transaction can be sponsored or subsidized intheir entirety or in part either in connection with a loyalty orpromotional program or in connection with a marketing program associatedwith at least one sponsor associated with sponsor server 119 per thesponsorship program attributes maintained by sponsorship database 88.

In an embodiment the universal transaction gateway 78 can notify thedevice 54 or subscriber S based on accounts reaching threshold values oron a periodic basis based on data maintained in profile database 86. Forexample, a SMS can be generated by engine 82 and sent to a given device54 or subscriber S via interface 80 that a given account balance hasdropped below a given threshold value.

1. A universal financial transaction gateway comprising: at least onenetwork interface for connecting to a computing device via a network;said at least one interface configured to emulate an interface inherentto said network; a transaction engine connected to said interfaceconfigured to receive transaction instructions from said mobilecomputing device via said network interface; a plurality of financialserver interfaces for connecting to a plurality of accounts associatedwith a plurality of financial servers; said plurality of financialserver interfaces configured to emulate an interface inherent to each ofsaid financial servers; and, said transaction engine configured toeffect said transaction instructions on said financial servers via saidfinancial server interfaces.
 2. The universal financial transactiongateway of claim 1 wherein said network interface is a core mobilenetwork interface and said network is a core mobile network and saidmobile computing device is a mobile electronic device.
 3. The universalfinancial transaction gateway of claim 2 wherein said core mobilenetwork interface is at least one of an Unstructured SupplementaryService Data (USSD) gateway interface; a short message service (SMS)center (SMSC) interface; an interactive voice response (IVR) systeminterface; an Internet Protocol (IP) interface.
 4. The universalfinancial gateway of claim 3 wherein the Internet Protocol interfaceincludes a Wireless Application Protocol (WAP) interface; a SessionInitiation Protocol interface, a Hypertext Transfer Protocol interface,and Extensible Markup Language interface
 5. The universal financialtransaction gateway of any one of claims 1-4 wherein said accountsassociated with said financial servers comprise one or more of a creditcard account, a credit line account, a bank account, a cash wiretransfer account, a prepaid wireless account, Operational Support System(OSS)/Business Support System (BSS) account, a securities tradingaccount, and a commodities trading account.
 6. The universal financialtransaction gateway of any one of claims 1-5 further comprising a localaccount database configured to maintain at least one account associatedwith said mobile computing device or with a subscriber associated withsaid mobile computing device.
 7. The universal financial transactiongateway of any one of claims 5-6 wherein at least one of said financialservers maintain at least one account associated with said mobilecomputing device or said subscriber.
 8. The universal financialtransaction gateway of any one of claims 1-7 wherein at least one ofsaid financial servers maintain at least one account associated withanother mobile computing device other than said mobile computing device,or with another subscriber associated with said other mobile computingdevice.
 9. The universal financial transaction gateway of any one ofclaims 1-8 wherein said transaction instructions include at least one ofa fund transfer between accounts; a loan request; an account balancerequest; a cash wire transfer; a credit or debit of a credit cardaccount; a credit or debit of a bank account; a securities purchase orsale, a stock trade; a commodities purchase or sale, a futures purchaseor sale, a bond purchase or sale.
 10. The universal financialtransaction gateway of any one of claims 1-9 wherein said transactioninstructions include a first account on a first financial serverassociated with said mobile computing device or a first subscriberassociated with said mobile computing device, and a second a account ona second financial server not associated with said mobile computingdevice or a second subscriber not associated with said mobile computingdevice.
 11. A method of conducting a universal financial transactioncomprising: receiving transaction instructions via a network interfaceconnected to mobile computing device via a network; said networkinterface configured to emulate an interface inherent to said network;processing said transaction instructions; sending said transactioninstructions via at least one financial server interface; said financialserver interface for connecting to a plurality of accounts associatedwith at least one financial server; said financial server interfaceconfigured to emulate an interface inherent to said financial server.12. The method of claim 11 further comprising validating said transferrequest and only proceeding to said processing if said transfer requestis successfully validated.
 13. The method of claim 11 further whereinsaid processing includes effecting an account debit or credit at a localaccount database.
 14. The method of claim 11 wherein said networkinterface is a core mobile network interface and said network is a coremobile network and said mobile computing device is a mobile electronicdevice.
 15. The method of claim 14 wherein said core mobile networkinterface is at least one of an Unstructured Supplementary Service Data(USSD) gateway interface; a short message service (SMS) center (SMSC)interface; an interactive voice response (IVR) system interface; anInternet Protocol (IP) interface.
 16. The universal financial gateway ofclaim 15 wherein the Internet Protocol interface includes a WirelessApplication Protocol (WAP) interface; a Session Initiation Protocolinterface, a Hypertext Transfer Protocol interface, and ExtensibleMarkup Language interface
 17. The method of any one of claims 11-16wherein said accounts associated with said financial servers compriseone or more of a credit card account, a credit line account, a bankaccount, a cash wire transfer account, a prepaid wireless account,Operational Support System (OSS)/Business Support System (BSS) account,a securities trading account, and a commodities trading account.
 18. Themethod of any one of claims 11-17 further comprising a local accountdatabase configured to maintain at least one account associated withsaid mobile computing device or with a subscriber associated with saidmobile computing device.
 19. The method of any one of claims 17-18wherein at least one of said financial servers maintain at least oneaccount associated with said mobile computing device or said subscriber.20. The method of any one of claims 11-19 wherein at least one of saidfinancial servers maintain at least one associated with another mobilecomputing device other than said mobile computing device, or withanother subscriber associated with said other mobile computing device.21. The method of any one of claims 11-20 wherein said transactioninstructions include at least one of a fund transfer between accounts; aloan request; an account balance request; a cash wire transfer; a creditor debit of a credit card account; a credit or debit of a bank account;a securities purchase or sale, a stock trade; a commodities purchase orsale, a futures purchase or sale, a bond purchase or sale.
 22. Themethod of any one of claims 11-21 wherein said transaction instructionsinclude a first account on a first financial server associated with saidmobile computing device or a first subscriber associated with saidmobile computing device, and a second a account on a second financialserver not associated with said mobile computing device or a secondsubscriber not associated with said mobile computing device.
 23. Atransaction engine in accordance with the transaction engine of claim 1.